1. Field of the Invention
The present invention relates generally to communication systems. More particularly, the present invention relates to placing communications on hold.
2. Background
The widespread use of the Internet as a daily research, entertainment, and communication tool has increased the deployment of modems and other communication devices. Many homes and offices use their existing telephone lines to access the Internet via modems. The existing lines, however, may support some subscriber-selected features, such as a call-waiting feature, which may interrupt a modem connection.
To prevent such interruptions, many existing communication softwares provide an option to the user to disable the call-waiting feature when the telephone line is in use by the modem. For example, at the time of installation, the communication software may prompt the user as to whether the intended telephone line supports the call-waiting feature. If the question is answered in the positive, the communication software may inquire as to whether the user wishes to disable the call-waiting feature. In response, almost all users wish to disable this feature, since the call-waiting signal may cause an interruption in the communication channel that may lead to a loss of connection. To disable the call-waiting feature, for example, the communication software may dial xe2x80x9c*70xe2x80x9d immediately before dialing into the network. As a result, subsequent callers attempting to reach the user would receive a busy signal, since the call-waiting feature has been disabled for that telephone line.
It is extremely undesirable for many users to disable the call-waiting feature, since that may result in losing important telephone calls. There is, therefore, a need for modems or other communication devices that are able to support the call-waiting feature reliably and without causing premature disconnects of the communication session.
One recurring problem area in implementing a reliable method of handling call-waiting interruptions, however, is a loss of carrier by the remote modem or communication device during the call-waiting interruption by the central office. During the period when the central office generates a call-waiting alert signal on the line to inform the user that an incoming call is being received and optionally transmits caller ID data, the remote modem receives silence. This silence may be misinterpreted by the remote modem as a loss of carrier.
As a result, the remote modem will initiate a recovery process to regain the lost carrier. Based on modem standards for Hayes compatible modems, carrier must be lost for the time indicated by the S-register xe2x80x9c10xe2x80x9d value before the remote modem may disconnect. The default value for the S-register xe2x80x9c10xe2x80x9d is xe2x80x9c14xe2x80x9d which is in 0.1-second units, i.e. 1.4 seconds. Therefore, if the remote modem does not recover the carrier within 1.4 seconds, the communication session is terminated by the remote modem. Very often, however, the silence period caused by the call-waiting interruptions may last much longer than 1.4 seconds. As a result a call-waiting interruption would cause the remote modem to terminate the communication session.
One simple approach to this problem may be to change the default value of the S-register xe2x80x9c10xe2x80x9d for the remote modem to require a longer period for loss of carrier before the call is terminated. For example, the S-register xe2x80x9c10xe2x80x9d value may be changed to xe2x80x9c140xe2x80x9d which means that the remote modem would have to confirm the loss of carrier for 14 seconds before terminating the communication session. However, this solution is too simplistic and undesirable for the Internet service providers and the like, since a loss of carrier may result from a variety of reasons. Therefore, extending the S-register xe2x80x9c10xe2x80x9d value is not a panacea and has serious adverse effects, such as preventing the Internet service providers from terminating the communication session on time and making their lines available to other users, when the carrier is truly lost for many other reasons. Of course, an even simpler approach would be the conventional approach of disabling the call-waiting feature.
All such approaches, however, fail to remedy this serious problem reliably and without introducing other serious and undesirable affects. Accordingly, there is an intense need in the art for a modem or communication device that can place the remote communication device on hold reliably and in time to prevent the remote modem from misinterpreting the silence period as a loss of carrier and terminating the communication session as a result.
In accordance with the purpose of the present invention as broadly described herein, there is provided method and system for placing a communication on hold.
According to one embodiment of the present invention, a communication session is established between two modems, for example, an APCM modem and a DPCM modem. The central office interrupts the communication session by transmitting a call-waiting alert signal to the APCM modem. In response to the alert signal, the APCM modem transmits a caller ID data request to the central office. The APCM modem further transmits an on hold notification to the DPCM modem to prevent the DPCM modem from terminating the communication session as a result of the interruption by the alert signal and/or receipt of the caller ID data by the APCM modem.
In another aspect of the present invention, the DPCM modem replies to the modem on hold notification with a hold response, including a parameter indicating a maximum hold period. In other aspects, the DPCM modem may reply with a disconnect response indicating that the communication should be terminated if the APCM modem wishes to answer the call waiting, and then waiting for a response from the APCM modem whether the communication should be resumed or terminated.
In one aspect of the present invention, the APCM modem may transmit the hold notification prior to receiving the caller ID data from the central office. Yet, in another aspect of the invention, the hold notification transmission may overlap with the receipt of the caller ID data from the central office.
In another aspect of the present invention, the DPCM modem may receive an interruption. In yet another aspect, the interruption may occur during a negotiation phase between the APCM and DPCM modems. In other embodiments, the interruption may occur during a data phase. In some embodiments, the interruption may be transmitted by the APCM or DPCM modem.